1. Field of the Invention
The present invention relates generally to a digital driver circuit, and more particularly relates to a digital driver circuit that drives a network having an unknown impedance within a predetermined range.
2. Background Art
Digital drivers in computer processor systems, in particular those drivers that drive signals being placed on open buses, may be called upon to drive a load having an impedance that may be any value within a predetermined range, depending upon the overall computer processor system configuration. For example, consider the computer processor system depicted in FIG. 1. A processor 10, such as a PC, has connected to it typically a number of accessories, such as a printer 12, hard disk drive 14, and memory cards 16 and 18. Signals are sent between the processor 10 and these auxiliary devices by way of one or more buses 20. The number of such auxiliary devices that may be connected to the system buses 20 can vary, depending upon what the user has provided for the system. Depending on the configuration of the system, the impedance seen by any one driver for digital signals from the processor 10 to the buses 20 can be any one of a number of different impedances within a range. In addition, the drivers for bus 20 in printer 12 and in memory card 18 see a characteristic impedance of the buses 20 different from that seen by hard drive 14 and memory card 16, for that one configuration.
Other situations exist within a digital data system wherein a digital driver may see an impedance which may not be known. For example, consider a memory card such as that shown in FIG. 2. Typical memory cards contain two major divisions: The logic modules 24 and the memory modules 26. The logic modules 24 are used to access the memory modules 26 in an organized fashion, to provide control functions, to provide error correction capabilities and direct memory addressing capabilities. Each memory card's memory modules 28 are organized in an array manner. Within this array, they are divided into any number of memory banks, two such memory banks, memory bank A and memory bank B, being shown in FIG. 2.
Drivers used in this type of a configuration drive signals from the logic modules 24 to the array modules 28. Typically, the signals are driven to ten or twenty modules at a time. A typical card has between forty and eighty modules on it.
A given memory card 22 will have a variable number of modules 28 on it, depending upon how the card is configured. Consequently, the impedance seen by the drivers in the logic modules 24 will vary, depending upon the configuration of the card 22. Nonetheless, the load seen by the driver in the logic modules 24, must be driven properly and with the correct termination. Otherwise, the reflections created by the mismatch must settle out before the signal can be assumed valid, thus increasing the signal delay time. Depending upon the load and driver, such delay could be very long. Hence, in this situation as well it is very important to have the driver impedance match the load impedance.
It can therefore be seen that there is a need for a digital data driver capable of having its impedance adjusted to match a load which may vary, depending upon the configuration of the network it is driving. It would be highly desirable that such driver adjust its impedance without manual intervention.
The present invention meets these needs.